/**
 * jims
 */
package com.jims.master.modules.nurse.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jims.master.common.persistence.DataEntity;
import com.jims.master.modules.doctor.entity.PatVisit;
import com.jims.master.modules.doctor.entity.PatVisitIndex;
import com.jims.master.modules.oper.entity.ClinicItemDict;
import org.hibernate.validator.constraints.Length;

import java.util.Date;

/**
 * 床位管理Entity
 * @author 赵宁
 * @version 2017-03-27
 */
public class BedRec extends DataEntity<BedRec> {
	
	private static final long serialVersionUID = 1L;
	private String patientId;		// 病人ID
	private String visitId;		// 住院ID
	private String wordCode;		// 护理单元ID
	private int bedNo;		// 床号
	private String bedLabel;		// 床标号
	private String roomNo;		// 房间
	private String deptId;		// 所属科室代码
	private String bedApprovedType;		// 床位编制类型
	private String bedSexType;		// 床位类型
	private String bedGrade;		// 床位等级
	private String bedStatus;		// 床位状态
	private String lockStatus;		// 是否锁住床位
	private String bedOccupy;       //包床标识
	private String lockOperator;		// 锁床位操作员
	private String airconditionClass;		// 空调类型
	private Date lastAcctDateTim;		// 最后一次计费时间
	private String noLabel;
	private PatVisit patVisit;
	private PatVisitIndex patVisitIndex;
	private ClinicItemDict clinicItemDict;
	private ClinicItemDict clinicItemDict1;
    private Integer checkOrdersNum;//未校对医嘱数量
    private Integer performOrdersNum;//未执行医嘱数量


	public ClinicItemDict getClinicItemDict1() {
		return clinicItemDict1;
	}

	public void setClinicItemDict1(ClinicItemDict clinicItemDict1) {
		this.clinicItemDict1 = clinicItemDict1;
	}

	public ClinicItemDict getClinicItemDict() {
		return clinicItemDict;
	}

	public void setClinicItemDict(ClinicItemDict clinicItemDict) {
		this.clinicItemDict = clinicItemDict;
	}

	public String getBedOccupy() {
		return bedOccupy;
	}

	public void setBedOccupy(String bedOccupy) {
		this.bedOccupy = bedOccupy;
	}

	public PatVisit getPatVisit() {
		return patVisit;
	}

	public void setPatVisit(PatVisit patVisit) {
		this.patVisit = patVisit;
	}

	public PatVisitIndex getPatVisitIndex() {
		return patVisitIndex;
	}

	public void setPatVisitIndex(PatVisitIndex patVisitIndex) {
		this.patVisitIndex = patVisitIndex;
	}

	public String getNoLabel() {
		return noLabel;
	}

	public void setNoLabel(String noLabel) {
		this.noLabel = noLabel;
	}

	public BedRec() {
		super();
	}

	public BedRec(String id){
		super(id);
	}

	@Length(min=1, max=64, message="病人ID长度必须介于 1 和 64 之间")
	public String getPatientId() {
		return patientId;
	}

	public void setPatientId(String patientId) {
		this.patientId = patientId;
	}
	
	@Length(min=1, max=64, message="住院ID长度必须介于 1 和 64 之间")
	public String getVisitId() {
		return visitId;
	}

	public void setVisitId(String visitId) {
		this.visitId = visitId;
	}
	
	@Length(min=1, max=64, message="护理单元ID长度必须介于 1 和 64 之间")
	public String getWordCode() {
		return wordCode;
	}

	public void setWordCode(String wordCode) {
		this.wordCode = wordCode;
	}
	@Length(min=1, max=20, message="床号长度必须介于 1 和 20 之间")
	public int getBedNo() {
		return bedNo;
	}

	public void setBedNo(int bedNo) {
		this.bedNo = bedNo;
	}


	
	@Length(min=1, max=20, message="床标号长度必须介于 1 和 20 之间")
	public String getBedLabel() {
		return bedLabel;
	}

	public void setBedLabel(String bedLabel) {
		this.bedLabel = bedLabel;
	}
	
	@Length(min=0, max=200, message="房间长度必须介于 0 和 200 之间")
	public String getRoomNo() {
		return roomNo;
	}

	public void setRoomNo(String roomNo) {
		this.roomNo = roomNo;
	}
	
	@Length(min=0, max=64, message="所属科室代码长度必须介于 0 和 64 之间")
	public String getDeptId() {
		return deptId;
	}

	public void setDeptId(String deptId) {
		this.deptId = deptId;
	}
	
	@Length(min=0, max=1, message="床位编制类型长度必须介于 0 和 1 之间")
	public String getBedApprovedType() {
		return bedApprovedType;
	}

	public void setBedApprovedType(String bedApprovedType) {
		this.bedApprovedType = bedApprovedType;
	}
	
	@Length(min=0, max=1, message="床位类型长度必须介于 0 和 1 之间")
	public String getBedSexType() {
		return bedSexType;
	}

	public void setBedSexType(String bedSexType) {
		this.bedSexType = bedSexType;
	}
	
	@Length(min=0, max=64, message="床位等级长度必须介于 0 和 64 之间")
	public String getBedGrade() {
		return bedGrade;
	}

	public void setBedGrade(String bedGrade) {
		this.bedGrade = bedGrade;
	}
	
	@Length(min=0, max=1, message="床位状态长度必须介于 0 和 1 之间")
	public String getBedStatus() {
		return bedStatus;
	}

	public void setBedStatus(String bedStatus) {
		this.bedStatus = bedStatus;
	}
	
	@Length(min=0, max=1, message="是否锁住床位长度必须介于 0 和 1 之间")
	public String getLockStatus() {
		return lockStatus;
	}

	public void setLockStatus(String lockStatus) {
		this.lockStatus = lockStatus;
	}
	
	@Length(min=0, max=64, message="锁床位操作员长度必须介于 0 和 64 之间")
	public String getLockOperator() {
		return lockOperator;
	}

	public void setLockOperator(String lockOperator) {
		this.lockOperator = lockOperator;
	}
	
	@Length(min=0, max=1, message="空调类型长度必须介于 0 和 1 之间")
	public String getAirconditionClass() {
		return airconditionClass;
	}

	public void setAirconditionClass(String airconditionClass) {
		this.airconditionClass = airconditionClass;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getLastAcctDateTim() {
		return lastAcctDateTim;
	}

	public void setLastAcctDateTim(Date lastAcctDateTim) {
		this.lastAcctDateTim = lastAcctDateTim;
	}
	
	@Length(min=1, max=64, message="机构ID长度必须介于 1 和 64 之间")
	public String getOrgId() {
		return orgId;
	}

	public void setOrgId(String orgId) {
		this.orgId = orgId;
	}

    public Integer getCheckOrdersNum() {
        return checkOrdersNum;
    }

    public void setCheckOrdersNum(Integer checkOrdersNum) {
        this.checkOrdersNum = checkOrdersNum;
    }

    public Integer getPerformOrdersNum() {
        return performOrdersNum;
    }

    public void setPerformOrdersNum(Integer performOrdersNum) {
        this.performOrdersNum = performOrdersNum;
    }
}